export interface OptionDto {
    label: string,
    value: string | number
}

export function getOptionsFromEnum(enumObj: { [key: string]: string | number }, ignoreList?: string[]) {
    const options = [] as OptionDto[]
    for (const key in enumObj) {
        if (typeof enumObj[key] !== 'string') {
            options.push({
                value: enumObj[key],
                label: key
            })
        }
    }
    if (Array.isArray(ignoreList)) {
        options.forEach(item => {
            if (ignoreList.includes(item.label)) {
                options.splice(options.indexOf(item), 1)
            }
        })
    }
    return options
}


export enum RightsTypeEnum {
    会员礼包 = 1,
    会员专属券 = 2
}

export enum MemberUnitEnum {
    份 = 1,
    次 = 2,
    期 = 3,
    个 = 4,
    天 = 5
}

export enum MemberProductEnum {
    子弹发薪 = 0,
    电子签 = 1,
    日日保 = 2,
    长期保 = 3,
    团意日保 = 4,
}

export enum MemberUseTimeModeEnum {
    固定使用时间 = 0,
    领取后限时使用 = 1,
    不限制使用时间 = 2,
}

export enum MemberUseScopeEnum {
    充值可用 = 1,
    消费可用 = 2
}

export enum MemberUseLimitEnum {
    满减 = 1,
    无门槛 = 2
}

export enum MemberGetModeEnum {
    一次性发放 = 1,
    周期性发放 = 2
}

export enum MemberGetPeriodEnum {
    每月 = 1,
    每周 = 2,
    每天 = 3,
}

export enum MemberDistributeModeEnum {
    系统发放 = 1,
    用户自领 = 2,
}

export enum MembershipStatusEnum {
    已激活 =0,
    已过期 = 1
}